[INFO] cloning repository https://github.com/sunjay/lion
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/sunjay/lion" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsunjay%2Flion", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsunjay%2Flion'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] 97daa3de1a7e7714432c2a6d04b11a0ce35d4ec8
[INFO] checking sunjay/lion against master#029c9e18dd1f4668e1d42bb187c1c263dfe20093 for pr-157562
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fsunjay%2Flion" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/sunjay/lion
[INFO] finished tweaking git repo https://github.com/sunjay/lion
[INFO] tweaked toml for git repo https://github.com/sunjay/lion written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/sunjay/lion on toolchain 029c9e18dd1f4668e1d42bb187c1c263dfe20093
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+029c9e18dd1f4668e1d42bb187c1c263dfe20093" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/sunjay/lion already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+029c9e18dd1f4668e1d42bb187c1c263dfe20093" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded output_vt100 v0.1.2
[INFO] [stderr]   Downloaded pretty_assertions v0.6.1
[INFO] [stderr]   Downloaded ctor v0.1.9
[INFO] [stderr]   Downloaded constant_time_eq v0.1.3
[INFO] [stderr]   Downloaded blake2-rfc v0.2.18
[INFO] [stderr]   Downloaded smallstr v0.1.0
[INFO] [stderr]   Downloaded failure_derive v0.1.5
[INFO] [stderr]   Downloaded dirs v1.0.5
[INFO] [stderr]   Downloaded redox_users v0.3.0
[INFO] [stderr]   Downloaded bytecount v0.3.2
[INFO] [stderr]   Downloaded rustc-demangle v0.1.14
[INFO] [stderr]   Downloaded proc-macro2 v0.4.29
[INFO] [stderr]   Downloaded nom_locate v0.3.1
[INFO] [stderr]   Downloaded synstructure v0.10.1
[INFO] [stderr]   Downloaded terminfo v0.6.1
[INFO] [stderr]   Downloaded failure v0.1.5
[INFO] [stderr]   Downloaded cc v1.0.35
[INFO] [stderr]   Downloaded bigdecimal v0.1.0
[INFO] [stderr]   Downloaded backtrace v0.3.15
[INFO] [stderr]   Downloaded mortal v0.2.0
[INFO] [stderr]   Downloaded linefeed v0.6.0
[INFO] [stderr]   Downloaded unicode-normalization v0.1.8
[INFO] [stderr]   Downloaded num-bigint v0.2.2
[INFO] [stderr]   Downloaded syn v0.15.33
[INFO] [stderr]   Downloaded nix v0.13.0
[INFO] [stderr]   Downloaded argon2rs v0.2.5
[INFO] [stderr]   Downloaded libc v0.2.53
[INFO] [stderr]   Downloaded backtrace-sys v0.1.28
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-m" "1610612736" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:3e793bdf10248eb2ddbd6b0faebed8155c11b4589982e2893733958d93e8d540" "sleep" "infinity", kill_on_drop: false }`
[INFO] [stdout] b2d14ae80e7917110e540f68374ed44569fb35926183e71c61595d3d38ac21d6
[INFO] running `Command { std: "docker" "start" "b2d14ae80e7917110e540f68374ed44569fb35926183e71c61595d3d38ac21d6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b2d14ae80e7917110e540f68374ed44569fb35926183e71c61595d3d38ac21d6" "/opt/rustwide/cargo-home/bin/cargo" "+029c9e18dd1f4668e1d42bb187c1c263dfe20093" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "b2d14ae80e7917110e540f68374ed44569fb35926183e71c61595d3d38ac21d6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "exec" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-w" "/opt/rustwide/workdir" "--user" "0:0" "b2d14ae80e7917110e540f68374ed44569fb35926183e71c61595d3d38ac21d6" "/opt/rustwide/cargo-home/bin/cargo" "+029c9e18dd1f4668e1d42bb187c1c263dfe20093" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr]    Compiling rand_core v0.4.0
[INFO] [stderr]    Compiling libc v0.2.53
[INFO] [stderr]    Compiling version_check v0.1.5
[INFO] [stderr]    Compiling memchr v2.2.0
[INFO] [stderr]    Compiling rand_chacha v0.1.1
[INFO] [stderr]    Compiling rand_pcg v0.1.2
[INFO] [stderr]    Compiling rand v0.6.5
[INFO] [stderr]     Checking phf_shared v0.7.24
[INFO] [stderr]    Compiling nix v0.13.0
[INFO] [stderr]     Checking smallvec v0.6.9
[INFO] [stderr]     Checking phf v0.7.24
[INFO] [stderr]    Compiling num-bigint v0.2.2
[INFO] [stderr]     Checking void v1.0.2
[INFO] [stderr]     Checking bytecount v0.3.2
[INFO] [stderr]     Checking difference v2.0.0
[INFO] [stderr]    Compiling rand_core v0.3.1
[INFO] [stderr]    Compiling rand_jitter v0.1.3
[INFO] [stderr]     Checking unicode-normalization v0.1.8
[INFO] [stderr]    Compiling rand_hc v0.1.0
[INFO] [stderr]    Compiling rand_isaac v0.1.1
[INFO] [stderr]    Compiling rand_xorshift v0.1.1
[INFO] [stderr]    Compiling nom v4.2.3
[INFO] [stderr]     Checking smallstr v0.1.0
[INFO] [stderr]     Checking pretty_assertions v0.6.1
[INFO] [stderr]    Compiling rand_os v0.1.3
[INFO] [stderr]     Checking dirs v1.0.5
[INFO] [stderr]     Checking nom_locate v0.3.1
[INFO] [stderr]     Checking bigdecimal v0.1.0
[INFO] [stderr]    Compiling phf_generator v0.7.24
[INFO] [stderr]    Compiling phf_codegen v0.7.24
[INFO] [stderr]    Compiling terminfo v0.6.1
[INFO] [stderr]     Checking mortal v0.2.0
[INFO] [stderr]     Checking linefeed v0.6.0
[INFO] [stderr]     Checking lion v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unexpected `cfg` condition name: `debug`
[INFO] [stdout]    --> src/canonical.rs:62:15
[INFO] [stdout]     |
[INFO] [stdout]  62 |         #[cfg(debug)]
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 208 |         unit_invariants_debug!(lhs);
[INFO] [stdout]     |         --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: expected names are: `docsrs`, `feature`, and `test` and 32 more
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(debug)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(debug)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `unit_invariants_debug` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `debug`
[INFO] [stdout]    --> src/canonical.rs:62:15
[INFO] [stdout]     |
[INFO] [stdout]  62 |         #[cfg(debug)]
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 209 |         unit_invariants_debug!(rhs);
[INFO] [stdout]     |         --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(debug)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(debug)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: this warning originates in the macro `unit_invariants_debug` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `debug`
[INFO] [stdout]    --> src/canonical.rs:62:15
[INFO] [stdout]     |
[INFO] [stdout]  62 |         #[cfg(debug)]
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 208 |         unit_invariants_debug!(lhs);
[INFO] [stdout]     |         --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: expected names are: `docsrs`, `feature`, and `test` and 32 more
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(debug)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(debug)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: `#[warn(unexpected_cfgs)]` on by default
[INFO] [stdout]     = note: this warning originates in the macro `unit_invariants_debug` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unexpected `cfg` condition name: `debug`
[INFO] [stdout]    --> src/canonical.rs:62:15
[INFO] [stdout]     |
[INFO] [stdout]  62 |         #[cfg(debug)]
[INFO] [stdout]     |               ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 209 |         unit_invariants_debug!(rhs);
[INFO] [stdout]     |         --------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = help: consider using a Cargo feature instead
[INFO] [stdout]     = help: or consider adding in `Cargo.toml` the `check-cfg` lint config for the lint:
[INFO] [stdout]              [lints.rust]
[INFO] [stdout]              unexpected_cfgs = { level = "warn", check-cfg = ['cfg(debug)'] }
[INFO] [stdout]     = help: or consider adding `println!("cargo::rustc-check-cfg=cfg(debug)");` to the top of the `build.rs`
[INFO] [stdout]     = note: see <https://doc.rust-lang.org/nightly/rustc/check-cfg/cargo-specifics.html> for more information about checking conditional configuration
[INFO] [stdout]     = note: this warning originates in the macro `unit_invariants_debug` (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `end` is never read
[INFO] [stdout]   --> src/unit_graph.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct ConversionPath {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 23 |     start: CanonicalUnit,
[INFO] [stdout] 24 |     end: CanonicalUnit,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConversionPath` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `span` is never read
[INFO] [stdout]   --> src/symbols.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     Constant {
[INFO] [stdout]    |     -------- field in this variant
[INFO] [stdout] 11 |         value: Number,
[INFO] [stdout] 12 |         span: Span<'a>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SymType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/symbols.rs:14:14
[INFO] [stdout]    |
[INFO] [stdout] 14 |     Function(Function<'a>, Span<'a>),
[INFO] [stdout]    |     -------- ^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SymType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 14 -     Function(Function<'a>, Span<'a>),
[INFO] [stdout] 14 +     Function((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/parser.rs:15:29
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn parse_program(input: &str) -> ParseResult<Program> {
[INFO] [stdout]    |                             ^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                             |        |           |
[INFO] [stdout]    |                             |        |           the same lifetime is hidden here
[INFO] [stdout]    |                             |        the same lifetime is hidden here
[INFO] [stdout]    |                             the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn parse_program(input: &str) -> ParseResult<'_, Program<'_>> {
[INFO] [stdout]    |                                                  +++        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/unit_graph.rs:88:20
[INFO] [stdout]    |
[INFO] [stdout] 88 |     pub fn unit_id(&self, name: &UnitName<'a>) -> Result<UnitID, UndeclaredUnit> {
[INFO] [stdout]    |                    ^^^^^ the lifetime is elided here             ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 88 |     pub fn unit_id(&self, name: &UnitName<'a>) -> Result<UnitID, UndeclaredUnit<'_>> {
[INFO] [stdout]    |                                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/symbols.rs:33:25
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn insert_const(&mut self, name: Ident<'a>, value: Number, span: Span<'a>) -> Result<(), DuplicateSymbol> {
[INFO] [stdout]    |                         ^^^^^^^^^ the lifetime is elided here                                    ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn insert_const(&mut self, name: Ident<'a>, value: Number, span: Span<'a>) -> Result<(), DuplicateSymbol<'_>> {
[INFO] [stdout]    |                                                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/symbols.rs:42:28
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub fn insert_function(&mut self, name: Ident<'a>, function: Function<'a>, span: Span<'a>) -> Result<(), DuplicateSymbol> {
[INFO] [stdout]    |                            ^^^^^^^^^ the lifetime is elided here                                             ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub fn insert_function(&mut self, name: Ident<'a>, function: Function<'a>, span: Span<'a>) -> Result<(), DuplicateSymbol<'_>> {
[INFO] [stdout]    |                                                                                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/canonical.rs:107:91
[INFO] [stdout]     |
[INFO] [stdout] 107 |     pub fn iter_unit_names<'a>(&'a self, units: &'a UnitGraph<'a>) -> impl Iterator<Item=(&UnitName<'a>, i64)> {
[INFO] [stdout]     |                                 --               --           --                          ^^^^^^^^^^--^
[INFO] [stdout]     |                                 |                |            |                           |         |
[INFO] [stdout]     |                                 |                |            |                           |         the same lifetime is named here
[INFO] [stdout]     |                                 |                |            |                           the same lifetime is elided here
[INFO] [stdout]     |                                 |                |            the lifetime is named here
[INFO] [stdout]     |                                 |                the lifetime is named here
[INFO] [stdout]     |                                 the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 107 |     pub fn iter_unit_names<'a>(&'a self, units: &'a UnitGraph<'a>) -> impl Iterator<Item=(&'a UnitName<'a>, i64)> {
[INFO] [stdout]     |                                                                                            ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `end` is never read
[INFO] [stdout]   --> src/unit_graph.rs:24:5
[INFO] [stdout]    |
[INFO] [stdout] 22 | pub struct ConversionPath {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] 23 |     start: CanonicalUnit,
[INFO] [stdout] 24 |     end: CanonicalUnit,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `ConversionPath` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `span` is never read
[INFO] [stdout]   --> src/symbols.rs:12:9
[INFO] [stdout]    |
[INFO] [stdout] 10 |     Constant {
[INFO] [stdout]    |     -------- field in this variant
[INFO] [stdout] 11 |         value: Number,
[INFO] [stdout] 12 |         span: Span<'a>,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SymType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]   --> src/symbols.rs:14:14
[INFO] [stdout]    |
[INFO] [stdout] 14 |     Function(Function<'a>, Span<'a>),
[INFO] [stdout]    |     -------- ^^^^^^^^^^^^  ^^^^^^^^
[INFO] [stdout]    |     |
[INFO] [stdout]    |     fields in this variant
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SymType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]    |
[INFO] [stdout] 14 -     Function(Function<'a>, Span<'a>),
[INFO] [stdout] 14 +     Function((), ()),
[INFO] [stdout]    |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::convert::From::from` that must be used
[INFO] [stdout]    --> src/ast.rs:238:9
[INFO] [stdout]     |
[INFO] [stdout] 238 |         UnitName::from("");
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_must_use)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 238 |         let _ = UnitName::from("");
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused return value of `std::convert::From::from` that must be used
[INFO] [stdout]    --> src/ast.rs:244:9
[INFO] [stdout]     |
[INFO] [stdout] 244 |         UnitName::from("_");
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout] help: use `let _ = ...` to ignore the resulting value
[INFO] [stdout]     |
[INFO] [stdout] 244 |         let _ = UnitName::from("_");
[INFO] [stdout]     |         +++++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/parser.rs:15:29
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn parse_program(input: &str) -> ParseResult<Program> {
[INFO] [stdout]    |                             ^^^^     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |                             |        |           |
[INFO] [stdout]    |                             |        |           the same lifetime is hidden here
[INFO] [stdout]    |                             |        the same lifetime is hidden here
[INFO] [stdout]    |                             the lifetime is elided here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout]    = note: `#[warn(mismatched_lifetime_syntaxes)]` on by default
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub fn parse_program(input: &str) -> ParseResult<'_, Program<'_>> {
[INFO] [stdout]    |                                                  +++        ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/unit_graph.rs:88:20
[INFO] [stdout]    |
[INFO] [stdout] 88 |     pub fn unit_id(&self, name: &UnitName<'a>) -> Result<UnitID, UndeclaredUnit> {
[INFO] [stdout]    |                    ^^^^^ the lifetime is elided here             ^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 88 |     pub fn unit_id(&self, name: &UnitName<'a>) -> Result<UnitID, UndeclaredUnit<'_>> {
[INFO] [stdout]    |                                                                                ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/symbols.rs:33:25
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn insert_const(&mut self, name: Ident<'a>, value: Number, span: Span<'a>) -> Result<(), DuplicateSymbol> {
[INFO] [stdout]    |                         ^^^^^^^^^ the lifetime is elided here                                    ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 33 |     pub fn insert_const(&mut self, name: Ident<'a>, value: Number, span: Span<'a>) -> Result<(), DuplicateSymbol<'_>> {
[INFO] [stdout]    |                                                                                                                 ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: hiding a lifetime that's elided elsewhere is confusing
[INFO] [stdout]   --> src/symbols.rs:42:28
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub fn insert_function(&mut self, name: Ident<'a>, function: Function<'a>, span: Span<'a>) -> Result<(), DuplicateSymbol> {
[INFO] [stdout]    |                            ^^^^^^^^^ the lifetime is elided here                                             ^^^^^^^^^^^^^^^ the same lifetime is hidden here
[INFO] [stdout]    |
[INFO] [stdout]    = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: use `'_` for type paths
[INFO] [stdout]    |
[INFO] [stdout] 42 |     pub fn insert_function(&mut self, name: Ident<'a>, function: Function<'a>, span: Span<'a>) -> Result<(), DuplicateSymbol<'_>> {
[INFO] [stdout]    |                                                                                                                             ++++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: eliding a lifetime that's named elsewhere is confusing
[INFO] [stdout]    --> src/canonical.rs:107:91
[INFO] [stdout]     |
[INFO] [stdout] 107 |     pub fn iter_unit_names<'a>(&'a self, units: &'a UnitGraph<'a>) -> impl Iterator<Item=(&UnitName<'a>, i64)> {
[INFO] [stdout]     |                                 --               --           --                          ^^^^^^^^^^--^
[INFO] [stdout]     |                                 |                |            |                           |         |
[INFO] [stdout]     |                                 |                |            |                           |         the same lifetime is named here
[INFO] [stdout]     |                                 |                |            |                           the same lifetime is elided here
[INFO] [stdout]     |                                 |                |            the lifetime is named here
[INFO] [stdout]     |                                 |                the lifetime is named here
[INFO] [stdout]     |                                 the lifetime is named here
[INFO] [stdout]     |
[INFO] [stdout]     = help: the same lifetime is referred to in inconsistent ways, making the signature confusing
[INFO] [stdout] help: consistently use `'a`
[INFO] [stdout]     |
[INFO] [stdout] 107 |     pub fn iter_unit_names<'a>(&'a self, units: &'a UnitGraph<'a>) -> impl Iterator<Item=(&'a UnitName<'a>, i64)> {
[INFO] [stdout]     |                                                                                            ++
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 17.96s
[INFO] [stderr] warning: the following packages contain code that will be rejected by a future version of Rust: nom v4.2.3, terminfo v0.6.1
[INFO] [stderr] note: to see what the problems were, use the option `--future-incompat-report`, or run `cargo report future-incompatibilities --id 5`
[INFO] running `Command { std: "docker" "inspect" "b2d14ae80e7917110e540f68374ed44569fb35926183e71c61595d3d38ac21d6", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "b2d14ae80e7917110e540f68374ed44569fb35926183e71c61595d3d38ac21d6", kill_on_drop: false }`
[INFO] [stdout] b2d14ae80e7917110e540f68374ed44569fb35926183e71c61595d3d38ac21d6
